package main

import (
	"fmt"
	"math"
)

type(
	byte int8
	rune int32
	文本 string
)

const (
	const1 = "A"
	const2 = iota
	const3 = 'B'
	const4 = iota
)

func main() {
	var a1 [1]byte
	var a2 [1]rune
	fmt.Println(a1)
	fmt.Println(a2)
	fmt.Println(math.MaxInt32)

	var b 文本
	b = "中文类型名"
	fmt.Println(b)

	c := 1
	fmt.Println(c)

	d, _, f, g := 1, 2, 3, 4
	fmt.Println(d)
	fmt.Println(f)
	fmt.Println(g)

	fmt.Println("int 转 string")
	var h int = 65
	i := string(h)
	fmt.Println(i)
	//A

	fmt.Println("---------------常量的初始化规则与枚举--------------")
	fmt.Println(const1)
	fmt.Println(const2)
	fmt.Println(const3)
	fmt.Println(const4)

	fmt.Println("---------------运算符--------------")
	fmt.Println(1 << 10)

	/*
	位运算符
	10进制 6: 0110
		  11: 1011
	--------------
	&         0010 = 2
	|		  1111 = 15
	^		  1101 = 13		两位只有一个是1才成立 
	&^		  0100 = 4		当第二个数中出现1 就要把第一个数同位变成0；当第二个数中出现0，则不进行任何操作
	*/

}

